/** Do not modify. This file is automatically generated
  * using gen_tld.pl and tld.list
  */

static const char *tld[] = {
	".LOCALHOST",
	".INVALID",
	".EXAMPLE",
	".COOP.BR",
	".ZLG.BR",
	".VET.BR",
	".TUR.BR",
	".TRD.BR",
	".TMP.BR",
	".SRV.BR",
	".SLG.BR",
	".REC.BR",
	".QSL.BR",
	".PSI.BR",
	".PSC.BR",
	".PRO.BR",
	".PPG.BR",
	".ORG.BR",
	".ODO.BR",
	".NTR.BR",
	".NOT.BR",
	".NOM.BR",
	".NET.BR",
	".MUSEUM",
	".MUS.BR",
	".MIL.BR",
	".MED.BR",
	".MAT.BR",
	".LEL.BR",
	".JOR.BR",
	".INF.BR",
	".IND.BR",
	".IMB.BR",
	".GOV.BR",
	".GGF.BR",
	".G12.BR",
	".FST.BR",
	".FOT.BR",
	".FND.BR",
	".FAR.BR",
	".ETI.BR",
	".ETC.BR",
	".ESP.BR",
	".ENG.BR",
	".EDU.BR",
	".ECN.BR",
	".COM.BR",
	".CNT.BR",
	".CNG.BR",
	".CIM.BR",
	".BMD.BR",
	".BIO.BR",
	".ATO.BR",
	".ART.BR",
	".ARQ.BR",
	".AGR.BR",
	".ADV.BR",
	".ADM.BR",
	".TV.BR",
	".FM.BR",
	".AM.BR",
	".TEST",
	".NAME",
	".INFO",
	".COOP",
	".ARPA",
	".AERO",
	".PRO",
	".ORG",
	".NET",
	".MIL",
	".INT",
	".GOV",
	".EDU",
	".COM",
	".BIZ",
	".ZW",
	".ZM",
	".ZA",
	".YU",
	".YT",
	".YE",
	".WS",
	".WF",
	".VU",
	".VN",
	".VI",
	".VG",
	".VE",
	".VC",
	".VA",
	".UZ",
	".UY",
	".US",
	".UM",
	".UK",
	".UG",
	".UA",
	".TZ",
	".TW",
	".TV",
	".TT",
	".TR",
	".TP",
	".TO",
	".TN",
	".TM",
	".TK",
	".TJ",
	".TH",
	".TG",
	".TF",
	".TD",
	".TC",
	".SZ",
	".SY",
	".SV",
	".SU",
	".ST",
	".SR",
	".SO",
	".SN",
	".SM",
	".SL",
	".SK",
	".SJ",
	".SI",
	".SH",
	".SG",
	".SE",
	".SD",
	".SC",
	".SB",
	".SA",
	".RW",
	".RU",
	".RO",
	".RE",
	".QA",
	".PY",
	".PW",
	".PT",
	".PS",
	".PR",
	".PN",
	".PM",
	".PL",
	".PK",
	".PH",
	".PG",
	".PF",
	".PE",
	".PA",
	".OM",
	".NZ",
	".NU",
	".NR",
	".NP",
	".NO",
	".NL",
	".NI",
	".NG",
	".NF",
	".NE",
	".NC",
	".NA",
	".MZ",
	".MY",
	".MX",
	".MW",
	".MV",
	".MU",
	".MT",
	".MS",
	".MR",
	".MQ",
	".MP",
	".MO",
	".MN",
	".MM",
	".ML",
	".MK",
	".MH",
	".MG",
	".MD",
	".MC",
	".MA",
	".LY",
	".LV",
	".LU",
	".LT",
	".LS",
	".LR",
	".LK",
	".LI",
	".LC",
	".LB",
	".LA",
	".KZ",
	".KY",
	".KW",
	".KR",
	".KP",
	".KN",
	".KM",
	".KI",
	".KH",
	".KG",
	".KE",
	".JP",
	".JO",
	".JM",
	".JE",
	".IT",
	".IS",
	".IR",
	".IQ",
	".IO",
	".IN",
	".IM",
	".IL",
	".IE",
	".ID",
	".HU",
	".HT",
	".HR",
	".HN",
	".HM",
	".HK",
	".GY",
	".GW",
	".GU",
	".GT",
	".GS",
	".GR",
	".GQ",
	".GP",
	".GN",
	".GM",
	".GL",
	".GI",
	".GH",
	".GG",
	".GF",
	".GE",
	".GD",
	".GB",
	".GA",
	".FR",
	".FO",
	".FM",
	".FK",
	".FJ",
	".FI",
	".ET",
	".ES",
	".ER",
	".EH",
	".EG",
	".EE",
	".EC",
	".DZ",
	".DO",
	".DM",
	".DK",
	".DJ",
	".DE",
	".CZ",
	".CY",
	".CX",
	".CV",
	".CU",
	".CR",
	".CO",
	".CN",
	".CM",
	".CL",
	".CK",
	".CI",
	".CH",
	".CG",
	".CF",
	".CD",
	".CC",
	".CA",
	".BZ",
	".BY",
	".BW",
	".BV",
	".BT",
	".BS",
	".BR",
	".BO",
	".BN",
	".BM",
	".BJ",
	".BI",
	".BH",
	".BG",
	".BF",
	".BE",
	".BD",
	".BB",
	".BA",
	".AZ",
	".AW",
	".AU",
	".AT",
	".AS",
	".AR",
	".AQ",
	".AO",
	".AN",
	".AM",
	".AL",
	".AI",
	".AG",
	".AF",
	".AE",
	".AD",
	".AC"
};
static size_t tldOffset(const char *domain) {
	const char *end = domain + strlen(domain);
	for(unsigned int i = 0; i < 321; ++i) 
	{
		size_t len = strlen(tld[i]);
		if(strcasecmp(end - len, tld[i]) == 0) 
		{
			return len;
		}
	}
 return 0;
}
